GRs综述3 How Can Recommender Systems Benefit from Large Language Models
2024 上交、华为
本文主要讨论:
- LLM在推荐系统的pipeline哪里?
- 特征工程、特征编码器、评分/排序、用户交互和pipeline控制
- 以及怎么发挥作用?
- 训练、推理
- 是否在训练期间调整LLM,以及是否涉及传统的推理推荐模型
传统推荐系统的主要缺点
- 传统推荐系统是面向领域的系统,通常基于特定领域内的离散ID特征构建。因此,他们缺乏开放领域世界知识来获得更好的推荐性能(例如,增强用户兴趣建模和项目内容理解),以及在不同领域和平台之间转移能力。
- 传统的推荐系统通常旨在以数据驱动的方式优化特定的用户反馈,如点击和购买,其中用户偏好和潜在动机通常基于在线收集的用户行为隐式建模。因此,这些系统可能缺乏推荐解释性,并且不能完全理解用户在各种环境中复杂多变的意图。此外,用户不能主动引导推荐系统遵循他们的要求,并通过用自然语言提供详细的说明来定制推荐结果。
现代推荐系统pipeline:
- 数据收集 (Data Collection): 这一阶段负责收集用户的反馈数据,包括显式反馈(如评分)和隐式反馈(如点击、下载和购买等行为数据)。同时,也收集包括项目属性、用户人口统计信息和上下文信息在内的原始特征数据。
- 特征工程 (Feature Engineering): 在此阶段,原始数据经过选择、处理和增强,转换成适合神经推荐模型输入的结构化数据。特征工程的输出是各种形式的特征,这些特征随后将由不同模态的特征编码器进行编码。
- 特征编码器 (Feature Encoder): 特征编码器接收特征工程阶段处理后的特征,并生成相应的神经嵌入,供下一阶段的评分/排名函数使用。根据不同的数据模态,会采用不同的编码器。
- 评分/排名函数 (Scoring/Ranking Function): 这是推荐系统的核心部分,负责基于特征编码器生成的神经嵌入选择或排列最相关的项目,以满足用户的信息需求。
- 用户交互 (User Interaction): 指推荐项目如何呈现给目标用户,以及用户如何向推荐系统反馈。用户交互可以包括单列表项的传统推荐页面,也可以包括更复杂和多模态的场景。
- 推荐流程控制器 (Recommendation Pipeline Controller): 作为整个推荐流程的中央机制,监控和控制上述所有阶段的操作。它甚至可以对推荐的不同阶段(如匹配、排名、重排)进行细粒度控制,或决定组合不同的下游模型和API来完成最终的推荐任务。
预训练语言模型(PLM)主要可分为三类:
- 仅编码器模型,如BERT
- 仅解码器模型,如GPT
- 编码器-解码器模型,例如T5
大型语言模型(LLM)是上述传统预训练语言模型的放大衍生物,例如GPT-3、PaLM、LLaMA。一个典型的LLM通常由十亿级甚至万亿级的参数组成,并在更大数量的文本语料库上进行预训练。
根据缩放定律所示,模型大小、数据量和训练规模的缩放可以持续促进下游NLP任务的模型性能增长。此外,当模型规模继续扩大并达到一定阈值时,LLM可以表现出突发能力,例如,少镜头上下文学习、指令跟随和逐步推理等。
3# Where
3.1# 特征工程
在特征工程阶段,LLM以原始特征(如项目描述、用户档案和用户行为)为输入,生成辅助文本特征用于数据扩充,目标各异,如丰富训练数据、缓解长尾问题等。为了充分利用LLM所表现出的开放世界知识和推理能力,LLM采用了不同的提示策略。根据数据增强的类型,这条线的研究工作主要可以分为两类:
- 用户级和项目级的特征增强
- KAR[228]采用LLM生成用户端偏好知识和项目端事实知识,作为下游传统推荐模型的插件特征。
- 实例级的训练样本生成
3.2# 特征编码器
研究人员建议采用LLM作为辅助文本特征编码器,以获得两大好处:
- 1)为后期的神经推荐模型进一步丰富具有语义信息的用户/项目表示
- 2)以自然语言为桥梁实现跨领域推荐(其中ID特征字段可能不共享)
- UniSRec[61]中,通过固定的BERT模型和轻量级MoE增强网络来学习跨域顺序推荐的项目表示。VQ-Rec[60]基于UniSRec,引入了矢量量化技术,以更好地将LLM生成的文本嵌入与推荐空间对齐。Uni-CTR[42]利用共享LLM的分层语义表示,充分捕捉不同领域之间的共性,从而实现更好的多领域推荐。
3.3# 打分/排序
当直接将LLM适配为评分/排名函数时,可以通过LLM的各种任务(例如,评分预估、项目ID生成)来实现这样的目标。根据LLM解决的不同任务,我们将相关研究工作分为三类:
- 1)项目评分任务(Item Scoring Task)
- LLM作为pointwise函数,对目标用户的每一个候选商品打分
- 不失一般性,输入文本prompt x, 生成目标token t 作为masked-LLM的masked token或者casusal-LLM的next token。
- 但是!推荐任务需要预估 user-item这个pair对的打分。输出应该是一个连续的分数而不是token。主要有三种方法:
- 单塔,放弃了公式3中的LM_Head,直接在h后面接MLP,做分类或者回归任务。
- 类似1,但是双塔,分别获得用户和商品的表示,并通过两个表示之间的距离度量来计算偏好得分。
- 保留解码器头部并基于概率分布进行偏好估计。即附加一个是否的二进制问题,从而将项目评分任务转换为二进制问答问题。
- 2)项目生成任务(Item Generation Task)
- 涉及到使用大型语言模型(LLM)来直接生成或创造推荐列表中的项目。与传统的推荐系统不同,这些系统通常基于用户的历史行为和偏好来预测用户可能感兴趣的项目,Item Generation Task更进一步,尝试生成全新的、可能符合用户兴趣的项目描述或项目本身。
- 幻觉问题、性能问题。生成上限20个重排?
- 3)混合任务
3.4# 用户交互
大型语言模型的引入使推荐系统在用户交互方面更加可行和用户友好。
从交互内容的角度,基于LLM的用户交互模式可分为
- 1)面向任务的用户交互
- LIu等人[126]利用会话RS和LLM之间的互补合作,实现电子商务预售对话的理解和生成。
- 2)开放式用户交互。
3.5# 流程控制
随着模型规模的扩大,LLM不再只是上述推荐系统的一部分,而是可以积极参与对系统的控制,可能会导致更具互动性和可解释性的推荐过程。
讨论:
LLM在哪里适应RS的开发路径与大型语言模型的进展基本一致。早在2021年和2022年初,预训练语言模型的参数大小仍然相对较小(例如,BERT基数为110M,GPT2-XL为1.5B)。因此,早期的工作通常倾向于将这些小规模的语言模型作为简单的文本特征编码器,或者作为微调以适应推荐系统的数据分布的评分/排名函数。通过这种方式,推荐过程被简单地公式化为一个一次性的直接预测任务,并且可以在语言模型的帮助下更好地解决。随着模型规模的逐渐增加,研究人员发现,大型语言模型已经获得了涌现的能力(如指令遵循和推理),以及大量具有强大文本生成能力的开放世界知识。有了这些由大规模参数带来的惊人功能,LLM不仅开始深化其在特征编码器和评分/排名功能阶段的使用,而且进一步将其作用扩展到其他阶段。
4# How
4.1# 第一象限
- 早期阶段(2021年及2022年初):
- 在这个时期,研究工作主要集中在使用相对较小的预训练语言模型(例如BERT和GPT-2)。
- 这些小型模型主要用于作为推荐系统中的文本特征编码器,以增强语义表示。
- 由于模型规模较小,研究者可以负担得起在训练阶段对语言模型进行全面微调(Full Finetuning)。
- 这些模型通常与CRM结合使用,其中CRM负责最终的推荐决策,而微调后的语言模型则提供辅助的文本特征表示。
- 近期阶段(2023年初左右):
- 随着大型语言模型(如ChatGPT和LLaMA)的出现,研究者开始探索将这些具有数十亿参数的模型整合到推荐系统中。
- 由于LLM的参数量巨大,进行全面微调变得计算成本高昂,因此研究者通常采用参数高效的微调方法(Parameter-Efficient Finetuning,PEFT),如低秩适应(LoRA)和提示调整(Prompt Tuning)。
- 在这个时期,LLM不再仅仅是一个可调的特征编码器,而是与CRM平等地参与推荐过程,利用其推理和开放世界知识来提升推荐性能。
- 研究者还探索了LLM在推荐系统的不同阶段的潜在应用,包括特征工程、用户交互和管道控制。
4.2# 第三象限
这个象限的工作主要关注于评估和利用LLM在推荐任务中的零样本(zero-shot)或少样本(few-shot)学习能力。
4.3# 第二象限
象限2中的研究工作利用LLM的不同关键能力(如丰富的语义信息、推理能力),而不进行微调,以帮助CRM更好地完成推荐任务。
在这些工作中,尽管LLM被冻结,但与象限3的工作(即,不调整LLM;在没有CRM的情况下推理)相比,CRM在推理阶段的参与通常可以保证更好的推荐性能,因为它们击败了最佳基线。与象限1(即Tune LLM;Infer with CRM)相比,由于大型语言模型是固定的,LLM在象限2中的作用主要是辅助CRM在推荐的不同阶段,包括但不限于特征工程和特征编码器。
4.4# 第四象限
象限4中的研究工作旨在根据来自推荐系统的训练数据,将大型语言模型微调为评分/排名函数,不包括CRM。由于CRM被排除在外,我们必须应用提示模板来获得文本输入-输出对,从而将推荐任务(如点击率估计和下一个项目预测)转换为文本分类任务或序列到序列任务。
如图4所示,即使模型规模仍然相对较小(即小于1B),基于推荐数据微调LLM的性能在适当的任务公式下也是有希望的。
讨论:
从图4中,我们可以观察到象限3和象限1、2、4的工作之间有一个清晰的性能边界。这表明推荐系统是一个高度专业化的领域,需要大量的领域内协作知识。LLM不能从其通用的预训练语料库中有效地学习这些知识。因此,当LLM适应RS时,我们必须参与领域协作知识以获得更好的性能,通常有两种方法来实现目标
- Tune LLM,以数据为中心注入collaborative knowledge
- Infer with CRM,以模型为中心注入collaborative knowledge
这两种方法在将LLM应用于RS时都强调了领域内collaborative knowledge的重要性。基于上述见解,如图5所示,我们在四象限分类的基础上得出了“如何”研究问题的总体发展趋势。
从2021年初开始,研究人员通常打算将小型LM和CRM结合起来,进行联合优化推荐(即象限1)。
然后,在2023年初左右,一些工作开始在没有CRM帮助的情况下利用冻结的LLM进行推荐(即象限3),其较差的性能表明了协作知识的必要性。
为此,提出了两种主要的解决方案,分别对应于象限2和象限4,通过涉及CRM或调整LLM来进行域内协作知识注入。
接下来,随着我们发现LLM适应RS的黄金原则(即,域内协作知识注入),开发路径进一步回到象限1,我们的目标是联合优化LLM和CRM,以获得卓越的推荐性能。
最后,就如何使LLM适应RS而言,未来可能的方向可能在于如何更好地将来自推荐系统的协作知识与LLM所表现出的通用语义知识和涌现能力相结合。例如,为基于代理的LLM提供外部工具,以便更彻底地访问推荐数据以及搜索引擎的实时网络信息
5# 挑战